--- /dev/null
+unit gnugettextDx;\r
+\r
+interface\r
+\r
+uses\r
+ Classes, TypInfo,\r
+{$IFDEF VER120}\r
+ gnugettextD4;\r
+{$ELSE}\r
+{$IFDEF VER130}\r
+ gnugettextD5;\r
+{$ELSE}\r
+ gnugettext;\r
+{$ENDIF}\r
+{$ENDIF}\r
+\r
+function _(const szMsgId: string): string;\r
+function gettext(const szMsgId: string): string;\r
+function dgettext(const szDomain: string; const szMsgId: string): string;\r
+procedure TranslateComponent(AnObject: TComponent);\r
+\r
+{$IFDEF VER120}\r
+function GetStrProp(Instance: TObject; const Name: string): string; overload;\r
+function GetStrProp(Instance: TObject; Info: PPropInfo): string; overload;\r
+procedure SetStrProp(Instance: TObject; const Name, Value: string); overload;\r
+procedure SetStrProp(Instance: TObject; Info: PPropInfo; const Value: string); overload;\r
+{$ENDIF}\r
+\r
+implementation\r
+\r
+function _(const szMsgId: string): string;\r
+begin\r
+{$IFDEF VER120}\r
+ Result := gnugettextD4._(szMsgId);\r
+{$ELSE}\r
+{$IFDEF VER130}\r
+ Result := gnugettextD5._(szMsgId);\r
+{$ELSE}\r
+ Result := gnugettext._(szMsgId);\r
+{$ENDIF}{$ENDIF}\r
+end;\r
+\r
+function gettext(const szMsgId: string): string;\r
+begin\r
+{$IFDEF VER120}\r
+ Result := gnugettextD4.gettext(szMsgId);\r
+{$ELSE}\r
+{$IFDEF VER130}\r
+ Result := gnugettextD5.gettext(szMsgId);\r
+{$ELSE}\r
+ Result := gnugettext.gettext(szMsgId);\r
+{$ENDIF}{$ENDIF}\r
+end;\r
+\r
+function dgettext(const szDomain: string; const szMsgId: string): string;\r
+begin\r
+{$IFDEF VER120}\r
+ Result := gnugettextD4.dgettext(szDomain, szMsgId);\r
+{$ELSE}\r
+{$IFDEF VER130}\r
+ Result := gnugettextD5.dgettext(szDomain, szMsgId);\r
+{$ELSE}\r
+ Result := gnugettext.dgettext(szDomain, szMsgId);\r
+{$ENDIF}{$ENDIF}\r
+end;\r
+\r
+procedure TranslateComponent(AnObject: TComponent);\r
+begin\r
+{$IFDEF VER120}\r
+ gnugettextD4.TranslateComponent(AnObject);\r
+{$ELSE}\r
+{$IFDEF VER130}\r
+ gnugettextD5.TranslateComponent(AnObject);\r
+{$ELSE}\r
+ gnugettext.TranslateComponent(AnObject);\r
+{$ENDIF}{$ENDIF}\r
+end;\r
+\r
+{$IFDEF VER120}\r
+function GetStrProp(Instance: TObject; const Name: string): string;\r
+begin\r
+ Result := gnugettextD4.GetStrProp(Instance, Name);\r
+end;\r
+\r
+function GetStrProp(Instance: TObject; Info: PPropInfo): string;\r
+begin\r
+ Result := gnugettextD4.GetStrProp(Instance, Info);\r
+end;\r
+\r
+procedure SetStrProp(Instance: TObject; const Name, Value: string);\r
+begin\r
+ gnugettextD4.SetStrProp(Instance, Name, Value);\r
+end;\r
+\r
+procedure SetStrProp(Instance: TObject; Info: PPropInfo; const Value: string);\r
+begin\r
+ gnugettextD4.SetStrProp(Instance, Info, Value);\r
+end;\r
+\r
+{$ENDIF}\r
+\r
+end.\r